<template>
  <div>
    <button @click="isShow = !isShow">显示/隐藏</button>
    <!--vue管理的动画需要用transition标签包裹，标签显示或隐藏时会自动播放动画-->
    <transition name="hello" :appear="true"> 
        <!--
            <transition name="hello">如果指定name=hello，动画的名称也是hello-enter-active
            :appear="true"表示让标签一开始就播放动画，可简写为appear
        -->
        <h1 v-show="isShow">你好啊！动画</h1>
    </transition>
  </div>
</template>

<script>
export default {
    name: 'Test',
    data() {
        return {
            isShow: true
        }
    }
}
</script>

<style scoped>
    h1 {
        background-color: orange;
    }

    /* 进入过程的样式 名称为 v-enter-active */
    .hello-enter-active { 
        animation: atguigu 0.5s linear;
    }

     /* 离开过程的样式 名称为 v-leave-active */
    .hello-leave-active  {
        animation: atguigu 0.5s reverse;
    }

    @keyframes atguigu {
        from {
            transform: translateX(-100%);
        }

        to {
            transform: translateX(0px);
        }
    }
</style>